home *** CD-ROM | disk | FTP | other *** search
- Path: uunet!jarthur!usc!zaphod.mps.ohio-state.edu!think!mintaka!mit-eddie!uw-beaver!zephyr.ens.tek.com!tekred!saab!billr
- From: billr@saab.CNA.TEK.COM (Bill Randle)
- Newsgroups: comp.sources.games
- Subject: v09i020: NetHack3 - display oriented dungeons & dragons (Ver. 3.0), Patch7t
- Message-ID: <5234@tekred.CNA.TEK.COM>
- Date: 24 Feb 90 01:04:00 GMT
- Sender: news@tekred.CNA.TEK.COM
- Lines: 1770
- Approved: billr@saab.CNA.TEK.COM
-
- Submitted-by: Izchak Miller <izchak@linc.cis.upenn.edu>
- Posting-number: Volume 9, Issue 20
- Archive-name: NetHack3/Patch7t
- Patch-To: NetHack3: Volume 7, Issue 56-93
-
-
-
- #! /bin/sh
- # This is a shell archive. Remove anything before this line, then unpack
- # it by saving it into a file and typing "sh file". To overwrite existing
- # files, type "sh file -c". You can also feed this as standard input via
- # unshar, or by typing "sh <file", e.g.. If this archive is complete, you
- # will see the following message at the end:
- # "End of archive 20 (of 30)."
- # Contents: patch7.16
- # Wrapped by billr@saab on Wed Feb 21 10:04:41 1990
- PATH=/bin:/usr/bin:/usr/ucb ; export PATH
- if test -f 'patch7.16' -a "${1}" != "-c" ; then
- echo shar: Renaming existing file \"'patch7.16'\" to \"'patch7.16.orig'\"
- mv -f 'patch7.16' 'patch7.16.orig'
- fi
- echo shar: Extracting \"'patch7.16'\" \(53275 characters\)
- sed "s/^X//" >'patch7.16' <<'END_OF_FILE'
- X*** include/Old/artifact.h Mon Feb 19 22:05:53 1990
- X--- include/artifact.h Tue Jan 16 18:10:46 1990
- X***************
- X*** 26,32 ****
- X
- X struct artifact {
- X unsigned otyp;
- X! char *name;
- X unsigned spfx;
- X unsigned long mtype; /* monster type, symbol, or flag */
- X struct attack attk, defn;
- X--- 26,32 ----
- X
- X struct artifact {
- X unsigned otyp;
- X! const char *name;
- X unsigned spfx;
- X unsigned long mtype; /* monster type, symbol, or flag */
- X struct attack attk, defn;
- X*** include/Old/color.h Mon Feb 19 22:06:15 1990
- X--- include/color.h Thu Feb 8 17:39:31 1990
- X***************
- X*** 12,26 ****
- X #define BLUE 4
- X #define MAGENTA 5
- X #define CYAN 6
- X- #define WHITE 7
- X #define GRAY 7 /* lo-intensity white */
- X #define BRIGHT 8
- X #define ORANGE_COLORED 9
- X #define YELLOW 11
- X #define MAXCOLORS 16 /* 8 basic + 8 bright */
- X
- X /* these can be configured */
- X- #define HI_MON RED + BRIGHT /* default flesh - red slaps! */
- X #define HI_OBJ MAGENTA
- X #define HI_METAL CYAN
- X #define HI_COPPER YELLOW
- X--- 12,25 ----
- X #define BLUE 4
- X #define MAGENTA 5
- X #define CYAN 6
- X #define GRAY 7 /* lo-intensity white */
- X #define BRIGHT 8
- X #define ORANGE_COLORED 9
- X #define YELLOW 11
- X+ #define WHITE 15
- X #define MAXCOLORS 16 /* 8 basic + 8 bright */
- X
- X /* these can be configured */
- X #define HI_OBJ MAGENTA
- X #define HI_METAL CYAN
- X #define HI_COPPER YELLOW
- X***************
- X*** 33,38 ****
- X #define HI_PAPER WHITE
- X #define HI_GLASS CYAN + BRIGHT
- X #define HI_MINERAL GRAY
- X! #define HI_ZAP BLUE + BRIGHT /* blue zaps! */
- X
- X #endif /* COLOR_H */
- X--- 32,37 ----
- X #define HI_PAPER WHITE
- X #define HI_GLASS CYAN + BRIGHT
- X #define HI_MINERAL GRAY
- X! #define HI_ZAP BLUE + BRIGHT
- X
- X #endif /* COLOR_H */
- X*** include/Old/config.h Mon Feb 19 22:06:27 1990
- X--- include/config.h Mon Feb 19 18:16:29 1990
- X***************
- X*** 20,26 ****
- X #define MSDOS /* define for MS-DOS (in case compiler doesn't) */
- X #else
- X /* #define MSDOS /* define for MS-DOS and most other micros */
- X! /* #define AMIGA /* define for Commodore-Amiga */
- X /* #define TOS /* define for Atari 1040ST */
- X
- X /* #define STUPID /* avoid some complicated expressions if
- X--- 20,34 ----
- X #define MSDOS /* define for MS-DOS (in case compiler doesn't) */
- X #else
- X /* #define MSDOS /* define for MS-DOS and most other micros */
- X! /* DO NOT define for AMIGA - MSDOS will be
- X! * automatically defined at the right place. */
- X! # ifdef AZTEC_C /* Manx 3.6 auto-defines this */
- X! # ifdef MCH_AMIGA /* Manx 3.6 auto-defines this for AMIGA */
- X! # ifndef AMIGA
- X! #define AMIGA /* define for Commodore-Amiga */
- X! # endif /* (Lattice auto-defines AMIGA) */
- X! # endif
- X! # endif
- X /* #define TOS /* define for Atari 1040ST */
- X
- X /* #define STUPID /* avoid some complicated expressions if
- X***************
- X*** 34,53 ****
- X * library in the makefile */
- X /* #define MINIMAL_TERM /* if a terminal handles highlighting or tabs poorly,
- X try this define, used in pager.c and termcap.c */
- X! /* #define MACOS 1 /* define for Apple Macintosh */
- X #endif
- X
- X #ifdef MACOS
- X! #define KR1ED 1 /* for compilers which can't handle defined() */
- X! #define LSC 1 /* for the Lighspeed 3.01p4 C compiler on the Mac */
- X! /* #define AZTEC 1 /* for the Manx Aztec C 3.6c compiler */
- X! /* #define THINKC4 /* for the Think C 4 compiler */
- X #define NEED_VARARGS /* if you're using precompiled headers */
- X! #define SMALLDATA 1 /* for Mac compilers with 32K global data limit */
- X!
- X! # ifdef KR1ED
- X! #define defined(x) (x<<1) /* Lightspeed & Aztec can't handle defined() yet */
- X # endif
- X #endif
- X
- X
- X--- 42,88 ----
- X * library in the makefile */
- X /* #define MINIMAL_TERM /* if a terminal handles highlighting or tabs poorly,
- X try this define, used in pager.c and termcap.c */
- X! /* #define MACOS /* define for Apple Macintosh */
- X! #endif
- X!
- X! #ifdef AMIGA
- X! #define NEED_VARARGS
- X! # ifdef AZTEC_C
- X! # define KR1ED /* Aztec 3.6 needs extra help for defined() */
- X! # endif
- X #endif
- X
- X #ifdef MACOS
- X! /* #define KR1ED /* for compilers which can't handle defined() */
- X! /* Lightspeed & Aztec can't handle defined() yet */
- X! /* #define LSC /* for the Lightspeed 3.01p4 C compiler on the Mac */
- X! /* #define AZTEC /* for the Manx Aztec C 3.6c compiler */
- X! #define THINKC4 /* for the Think C 4 compiler */
- X! /* #define MAKEDEFS_C /* uncomment this ONLY while compiling makedefs */
- X! /* #define CUSTOM_IO /* uncomment only while compiling Nethack */
- X! # ifndef MAKEDEFS_C
- X! # ifndef NEED_VARARGS
- X #define NEED_VARARGS /* if you're using precompiled headers */
- X! # endif
- X # endif
- X+ #define SMALLDATA /* for Mac compilers with 32K global data limit */
- X+ #endif
- X+
- X+
- X+ #ifdef KR1ED /* For compilers which cannot handle defined() */
- X+ #define defined(x) (-x-1 != -1)
- X+ /* Because:
- X+ * #define FOO => FOO={} => defined( ) => (-1 != - - 1) => 1
- X+ * #define FOO 1 or on command-line -DFOO
- X+ * => defined(1) => (-1 != - 1 - 1) => 1
- X+ * if FOO isn't defined, FOO=0. But some compilers default to 0 instead of 1
- X+ * for -DFOO, oh well.
- X+ * => defined(0) => (-1 != - 0 - 1) => 0
- X+ *
- X+ * But:
- X+ * defined("") => (-1 != - "" - 1)
- X+ * [which is an unavoidable catastrophe.]
- X+ */
- X #endif
- X
- X
- X***************
- X*** 63,69 ****
- X # ifndef KR1ED
- X #define WIZARD "izchak" /* the person allowed to use the -D option */
- X # else
- X! #define WIZARD 1
- X #define WIZARD_NAME "johnny"
- X # endif
- X #endif
- X--- 98,104 ----
- X # ifndef KR1ED
- X #define WIZARD "izchak" /* the person allowed to use the -D option */
- X # else
- X! #define WIZARD
- X #define WIZARD_NAME "johnny"
- X # endif
- X #endif
- X***************
- X*** 78,90 ****
- X * smaller bones/level/save files, but require additional code and time.
- X */
- X
- X #define COMPRESS "/usr/local/compress" /* path name for 'compress' */
- X! #ifndef COMPRESS
- X #define ZEROCOMP /* Use only if COMPRESS is not used -- Olaf Seibert */
- X #endif
- X
- X!
- X #define CHDIR /* delete if no chdir() available */
- X
- X #ifdef CHDIR
- X /*
- X--- 113,128 ----
- X * smaller bones/level/save files, but require additional code and time.
- X */
- X
- X+ #ifndef MACOS
- X #define COMPRESS "/usr/local/compress" /* path name for 'compress' */
- X! # ifndef COMPRESS
- X #define ZEROCOMP /* Use only if COMPRESS is not used -- Olaf Seibert */
- X+ # endif
- X #endif
- X
- X! #ifndef MACOS
- X #define CHDIR /* delete if no chdir() available */
- X+ #endif
- X
- X #ifdef CHDIR
- X /*
- X***************
- X*** 173,218 ****
- X */
- X
- X /* game features */
- X! #define POLYSELF 1 /* Polymorph self code by Ken Arromdee */
- X! #define THEOLOGY 1 /* Smarter gods - The Unknown Hacker */
- X! #define SOUNDS 1 /* Add more life to the dungeon */
- X! #define KICK 1 /* Allow kicking things besides doors -Izchak Miller */
- X /* dungeon features */
- X! #define THRONES 1 /* Thrones and Courts by M. Stephenson */
- X! #define FOUNTAINS 1 /* Fountain code by SRT (+ GAN + EB) */
- X! #define SINKS 1 /* Kitchen sinks - Janet Walz */
- X! #define ALTARS 1 /* Sacrifice sites - Jean-Christophe Collet */
- X /* dungeon levels */
- X! #define WALLIFIED_MAZE 1 /* Fancy mazes - Jean-Christophe Collet */
- X! #define REINCARNATION 1 /* Rogue-like levels */
- X! #define STRONGHOLD 1 /* Challenging special levels - Jean-Christophe Collet*/
- X /* monsters & objects */
- X! #define ORACLE 1 /* Include another source of information */
- X! #define MEDUSA 1 /* Mirrors and the Medusa by Richard P. Hughey */
- X! #define KOPS 1 /* Keystone Kops by Scott R. Turner */
- X! #define ARMY 1 /* Soldiers, barracks by Steve Creps */
- X! #define WORM 1 /* Long worms */
- X! #define GOLEMS 1 /* Golems, by KAA */
- X! #define INFERNO 1 /* Demons & Demonlords */
- X #ifdef INFERNO
- X! #define SEDUCE 1 /* Succubi/incubi additions, by KAA, suggested by IM */
- X #endif
- X! #define TOLKIEN 1 /* More varieties of objects and monsters */
- X! #define PROBING 1 /* Wand of probing code by Gil Neiger */
- X! #define WALKIES 1 /* Leash code by M. Stephenson */
- X! #define SHIRT 1 /* Hawaiian shirt code by Steve Linhart */
- X! #define MUSIC 1 /* Musical instruments - Jean-Christophe Collet */
- X! #define TUTTI_FRUTTI 1 /* Fruits as in Rogue, but which work... -KAA */
- X! #define SPELLS 1 /* Spell casting by M. Stephenson */
- X! #define NAMED_ITEMS 1 /* Special named items handling */
- X /* difficulty */
- X! #define ELBERETH 1 /* Allow for disabling the E word - Mike 3point */
- X! #define EXPLORE_MODE 1 /* Allow non-scoring play with additional powers */
- X! #define HARD 1 /* Enhanced wizard code by M. Stephenson */
- X /* I/O */
- X! #define REDO 1 /* support for redoing last command - DGK */
- X! #define COM_COMPL 1 /* Command line completion by John S. Bien */
- X! #define CLIPPING 1 /* allow smaller screens -- ERS */
- X
- X #ifdef REDO
- X #define DOAGAIN '\001' /* The "redo" key used in tty.c and cmd.c */
- X--- 211,258 ----
- X */
- X
- X /* game features */
- X! #define POLYSELF /* Polymorph self code by Ken Arromdee */
- X! #define THEOLOGY /* Smarter gods - The Unknown Hacker */
- X! #define SOUNDS /* Add more life to the dungeon */
- X! #define KICK /* Allow kicking things besides doors -Izchak Miller */
- X /* dungeon features */
- X! #define THRONES /* Thrones and Courts by M. Stephenson */
- X! #define FOUNTAINS /* Fountain code by SRT (+ GAN + EB) */
- X! #define SINKS /* Kitchen sinks - Janet Walz */
- X! #define ALTARS /* Sacrifice sites - Jean-Christophe Collet */
- X /* dungeon levels */
- X! #define WALLIFIED_MAZE /* Fancy mazes - Jean-Christophe Collet */
- X! #define REINCARNATION /* Rogue-like levels */
- X! #define STRONGHOLD /* Challenging special levels - Jean-Christophe Collet*/
- X /* monsters & objects */
- X! #define ORACLE /* Include another source of information */
- X! #define MEDUSA /* Mirrors and the Medusa by Richard P. Hughey */
- X! #define KOPS /* Keystone Kops by Scott R. Turner */
- X! #define ARMY /* Soldiers, barracks by Steve Creps */
- X! #define WORM /* Long worms */
- X! #define GOLEMS /* Golems, by KAA */
- X! #define INFERNO /* Demons & Demonlords */
- X #ifdef INFERNO
- X! #define SEDUCE /* Succubi/incubi additions, by KAA, suggested by IM */
- X #endif
- X! #define TOLKIEN /* More varieties of objects and monsters */
- X! #define PROBING /* Wand of probing code by Gil Neiger */
- X! #define WALKIES /* Leash code by M. Stephenson */
- X! #define SHIRT /* Hawaiian shirt code by Steve Linhart */
- X! #define MUSIC /* Musical instruments - Jean-Christophe Collet */
- X! #define TUTTI_FRUTTI /* Fruits as in Rogue, but which work... -KAA */
- X! #define SPELLS /* Spell casting by M. Stephenson */
- X! #define NAMED_ITEMS /* Special named items handling */
- X /* difficulty */
- X! #define ELBERETH /* Allow for disabling the E word - Mike 3point */
- X! #define EXPLORE_MODE /* Allow non-scoring play with additional powers */
- X! #define HARD /* Enhanced wizard code by M. Stephenson */
- X /* I/O */
- X! #define REDO /* support for redoing last command - DGK */
- X! #define COM_COMPL /* Command line completion by John S. Bien */
- X! #ifndef AMIGA
- X! #define CLIPPING /* allow smaller screens -- ERS */
- X! #endif
- X
- X #ifdef REDO
- X #define DOAGAIN '\001' /* The "redo" key used in tty.c and cmd.c */
- X*** include/Old/decl.h Mon Feb 19 22:06:55 1990
- X--- include/decl.h Mon Feb 19 18:16:33 1990
- X***************
- X*** 20,26 ****
- X E char *catmore;
- X #endif /* DEF_PAGER */
- X E char SAVEF[];
- X! E char *hname;
- X E const char *hu_stat[]; /* defined in eat.c */
- X E int medusa_level;
- X E int bigroom_level;
- X--- 20,26 ----
- X E char *catmore;
- X #endif /* DEF_PAGER */
- X E char SAVEF[];
- X! E const char *hname;
- X E const char *hu_stat[]; /* defined in eat.c */
- X E int medusa_level;
- X E int bigroom_level;
- X***************
- X*** 73,91 ****
- X E int smeq[];
- X E int doorindex;
- X E char *save_cm;
- X! E char *killer;
- X E char inv_order[];
- X E char plname[PL_NSIZ];
- X E char dogname[];
- X E char catname[];
- X E const char sdir[], ndir[]; /* defined in hack.c */
- X! E char *occtxt; /* defined when occupation != NULL */
- X! E char *nomovemsg;
- X E const char nul[];
- X E char *HI, *HE, *AS, *AE; /* set up in termcap.c */
- X E char *CD; /* set up in termcap.c */
- X E int CO, LI; /* set up in termcap.c: COLNO and ROWNO+3 */
- X! E char *traps[];
- X #ifndef MAKEDEFS_C /* avoid conflict with lock() */
- X E char lock[];
- X #endif
- X--- 73,95 ----
- X E int smeq[];
- X E int doorindex;
- X E char *save_cm;
- X! #define KILLED_BY_AN 0
- X! #define KILLED_BY 1
- X! #define NO_KILLER_PREFIX 2
- X! E int killer_format;
- X! E const char *killer;
- X E char inv_order[];
- X E char plname[PL_NSIZ];
- X E char dogname[];
- X E char catname[];
- X E const char sdir[], ndir[]; /* defined in hack.c */
- X! E const char *occtxt; /* defined when occupation != NULL */
- X! E const char *nomovemsg;
- X E const char nul[];
- X E char *HI, *HE, *AS, *AE; /* set up in termcap.c */
- X E char *CD; /* set up in termcap.c */
- X E int CO, LI; /* set up in termcap.c: COLNO and ROWNO+3 */
- X! E const char *traps[];
- X #ifndef MAKEDEFS_C /* avoid conflict with lock() */
- X E char lock[];
- X #endif
- X***************
- X*** 130,136 ****
- X--- 134,144 ----
- X #ifndef COLOR_H
- X #include "color.h"
- X #endif
- X+ # ifdef TOS
- X+ E const char *hilites[MAXCOLORS];
- X+ # else
- X E char *hilites[MAXCOLORS];
- X+ # endif
- X #endif
- X
- X #ifndef OBJ_H
- X***************
- X*** 189,194 ****
- X--- 197,210 ----
- X
- X E const char nothing_happens[];
- X E const char thats_enough_tries[];
- X+
- X+ E const char monsyms[], objsyms[];
- X+ E const char *monexplain[], *objexplain[];
- X+
- X+ #ifdef NAMED_ITEMS
- X+ E const int artifact_num;
- X+ E boolean artiexist[];
- X+ #endif
- X
- X #undef E
- X
- X*** include/Old/def_os2.h Mon Feb 19 22:07:10 1990
- X--- include/def_os2.h Tue Nov 28 20:50:49 1989
- X***************
- X*** 106,108 ****
- X--- 106,109 ----
- X USHORT APIENTRY DosFindNext(HDIR, PFILEFINDBUF, USHORT, PUSHORT);
- X USHORT APIENTRY DosSelectDisk(USHORT);
- X USHORT APIENTRY VioGetMode(PVIOMODEINFO, HVIO);
- X+ USHORT APIENTRY VioSetCurPos(USHORT, USHORT, HVIO);
- X*** include/Old/flag.h Mon Feb 19 22:08:59 1990
- X--- include/flag.h Wed Jan 10 19:21:58 1990
- X***************
- X*** 62,67 ****
- X--- 62,70 ----
- X #endif
- X boolean rawio; /* Whether can use rawio (IOCTL call) */
- X #endif
- X+ #ifdef MACOS
- X+ boolean wantspace; /* Waiting for a space (as in --More--) */
- X+ #endif
- X };
- X
- X extern struct flag flags;
- X*** include/Old/func_tab.h Mon Feb 19 22:09:13 1990
- X--- include/func_tab.h Tue Jan 16 18:11:08 1990
- X***************
- X*** 8,22 ****
- X
- X struct func_tab {
- X char f_char;
- X! int (*f_funct)();
- X! char *f_text;
- X };
- X
- X extern const struct func_tab cmdlist[];
- X
- X struct ext_func_tab {
- X! char *ef_txt, *ef_desc;
- X! int (*ef_funct)();
- X };
- X
- X extern const struct ext_func_tab extcmdlist[];
- X--- 8,22 ----
- X
- X struct func_tab {
- X char f_char;
- X! int NDECL((*f_funct));
- X! const char *f_text;
- X };
- X
- X extern const struct func_tab cmdlist[];
- X
- X struct ext_func_tab {
- X! const char *ef_txt, *ef_desc;
- X! int NDECL((*ef_funct));
- X };
- X
- X extern const struct ext_func_tab extcmdlist[];
- X*** include/Old/global.h Mon Feb 19 22:09:24 1990
- X--- include/global.h Mon Feb 19 18:16:29 1990
- X***************
- X*** 5,23 ****
- X #ifndef GLOBAL_H
- X #define GLOBAL_H
- X
- X! #include <stdio.h>
- X
- X
- X /* #define BETA /* if a beta-test copy [MRS] */
- X! #define VERSION "3.0h" /* version number. */
- X
- X /*
- X * Files expected to exist in the playground directory.
- X */
- X
- X! #define RECORD "record" /* the file containing the list of topscorers */
- X! #define HELP "help" /* the file containing command descriptions */
- X! #define SHELP "hh" /* abbreviated form of the same */
- X #define RUMORFILE "rumors" /* a file with fortune cookies */
- X #define ORACLEFILE "oracles" /* a file with oracular information */
- X #define DATAFILE "data" /* a file giving the meaning of symbols used */
- X--- 5,25 ----
- X #ifndef GLOBAL_H
- X #define GLOBAL_H
- X
- X! #ifndef VMS
- X! # include <stdio.h>
- X! #endif
- X
- X
- X /* #define BETA /* if a beta-test copy [MRS] */
- X! #define VERSION "3.0i" /* version number. */
- X
- X /*
- X * Files expected to exist in the playground directory.
- X */
- X
- X! #define RECORD "record" /* a file containing list of topscorers */
- X! #define HELP "help" /* a file containing command descriptions */
- X! #define SHELP "hh" /* abbreviated form of the same */
- X #define RUMORFILE "rumors" /* a file with fortune cookies */
- X #define ORACLEFILE "oracles" /* a file with oracular information */
- X #define DATAFILE "data" /* a file giving the meaning of symbols used */
- X***************
- X*** 25,31 ****
- X #define HISTORY "history" /* a file giving nethack's history */
- X #define LICENSE "license" /* file with license information */
- X #define OPTIONFILE "opthelp" /* a file explaining runtime options */
- X!
- X
- X
- X /* Assorted definitions that may depend on selections in config.h. */
- X--- 27,35 ----
- X #define HISTORY "history" /* a file giving nethack's history */
- X #define LICENSE "license" /* file with license information */
- X #define OPTIONFILE "opthelp" /* a file explaining runtime options */
- X! #ifdef MACOS
- X! #define MACHELP "MacHelp" /* file with Macintosh information */
- X! #endif
- X
- X
- X /* Assorted definitions that may depend on selections in config.h. */
- X***************
- X*** 55,64 ****
- X typedef schar xchar;
- X typedef xchar boolean; /* 0 or 1 */
- X
- X! #ifndef MACOS /* defined in MacTypes.h(LSC) or Types.h(Aztec & MPW) */
- X #define TRUE ((boolean)1)
- X #define FALSE ((boolean)0)
- X #endif
- X
- X #ifdef BITFIELDS
- X #define Bitfield(x,n) unsigned x:n
- X--- 59,70 ----
- X typedef schar xchar;
- X typedef xchar boolean; /* 0 or 1 */
- X
- X! #ifndef MACOS
- X! #ifndef TRUE /* defined in some systems' native include files */
- X #define TRUE ((boolean)1)
- X #define FALSE ((boolean)0)
- X #endif
- X+ #endif
- X
- X #ifdef BITFIELDS
- X #define Bitfield(x,n) unsigned x:n
- X***************
- X*** 74,80 ****
- X * prototypes for the ANSI compilers so people quit trying to fix the prototypes
- X * to match the standard and thus lose the typechecking.
- X */
- X! #if defined(MSDOS) || defined(THINKC4) && !(defined(AMIGA) || defined(TOS))
- X # define CHAR_P char
- X # define SCHAR_P schar
- X # define UCHAR_P uchar
- X--- 80,86 ----
- X * prototypes for the ANSI compilers so people quit trying to fix the prototypes
- X * to match the standard and thus lose the typechecking.
- X */
- X! #if (defined(MSDOS) && !defined(TOS)) || defined (AMIGA) || defined(THINKC4)
- X # define CHAR_P char
- X # define SCHAR_P schar
- X # define UCHAR_P uchar
- X***************
- X*** 122,127 ****
- X--- 128,134 ----
- X
- X #if defined(VMS) && !defined(VMSCONF_H)
- X # include "vmsconf.h"
- X+ # include <stdio.h>
- X #endif
- X
- X #if defined(UNIX) && !defined(UNIXCONF_H)
- X*** include/Old/hack.h Mon Feb 19 22:09:46 1990
- X--- include/hack.h Mon Feb 19 18:16:34 1990
- X***************
- X*** 75,80 ****
- X--- 75,85 ----
- X #include "rm.h"
- X #endif
- X
- X+ #ifdef OVERLAY /* This doesn't belong here, but we have little choice */
- X+ #undef NDECL
- X+ #define NDECL(f) f()
- X+ #endif
- X+
- X #ifndef EXTERN_H
- X #include "extern.h"
- X #endif
- X***************
- X*** 117,121 ****
- X--- 122,151 ----
- X #define getuid() 1
- X #define getlogin() ((char *) NULL)
- X #endif /* MSDOS */
- X+
- X+ /* Macro for a few items that are only static if we're not overlaid.... */
- X+ #if defined(OVERLAY) && (defined(OVL0) || defined(OVL1) || defined(OVL2) || defined(OVLB))
- X+ # define OSTATIC extern
- X+ # define XSTATIC
- X+ # define OVERLAY_SPLIT
- X+ # ifdef OVLB
- X+ # define VSTATIC
- X+ # else
- X+ # define VSTATIC extern
- X+ # endif
- X+ #else
- X+ # define OSTATIC static
- X+ # define XSTATIC static
- X+ # define VSTATIC static
- X+ #endif
- X+
- X+ /* Unless explicit control is being taken of what is linked where, */
- X+ /* always compile everything */
- X+ #if !defined(OVERLAY) || (!defined(OVL0) && !defined(OVL1) && !defined(OVL2) && !defined(OVLB))
- X+ # define OVL0 /* Highest priority */
- X+ # define OVL1
- X+ # define OVL2 /* Lowest specified priority */
- X+ # define OVLB /* The base overlay segment */
- X+ #endif
- X
- X #endif /* HACK_H /**/
- X*** include/Old/macconf.h Mon Feb 19 22:10:17 1990
- X--- include/macconf.h Fri Feb 16 19:15:36 1990
- X***************
- X*** 10,16 ****
- X * The following options are configurable:
- X */
- X
- X! #define RANDOM 1 /* have Berkeley random(3) */
- X
- X #define PATHLEN 220 /* maximum pathlength */
- X #define FILENAME 31 /* maximum filename length (conservative) */
- X--- 10,16 ----
- X * The following options are configurable:
- X */
- X
- X! #define RANDOM /* have Berkeley random(3) */
- X
- X #define PATHLEN 220 /* maximum pathlength */
- X #define FILENAME 31 /* maximum filename length (conservative) */
- X***************
- X*** 18,24 ****
- X #define glo(x) name_file(lock, x) /* name_file used for bones */
- X #include "msdos.h" /* contains necessary externs for [os_name].c */
- X extern char *configfile;
- X! #define NO_SIGNAL 1
- X #define perror(x)
- X
- X /*
- X--- 18,24 ----
- X #define glo(x) name_file(lock, x) /* name_file used for bones */
- X #include "msdos.h" /* contains necessary externs for [os_name].c */
- X extern char *configfile;
- X! #define NO_SIGNAL
- X #define perror(x)
- X
- X /*
- X***************
- X*** 55,60 ****
- X--- 55,62 ----
- X #include <types.h>
- X #include <io.h>
- X #define memcpy(x,y,j) movmem(y,x,j)
- X+ #define memset(x,y,j) setmem(x,j,y)
- X+ extern char *malloc();
- X extern char *calloc();
- X #else
- X #include <Fcntl.h>
- X***************
- X*** 70,75 ****
- X--- 72,78 ----
- X #endif
- X #endif
- X
- X+ #include <pascal.h>
- X #include <Quickdraw.h>
- X #include <FontMgr.h>
- X #include <EventMgr.h>
- X***************
- X*** 101,108 ****
- X--- 104,117 ----
- X #ifdef AZTEC
- X #include <utime.h> /* AZTEC 3.6c */
- X #define curs(x,y) tcurs(x,y)
- X+ #include <Types.h>
- X+ #define CtoPstr ctop
- X+ #define PtoCstr ptoc
- X #else
- X #include <Time.h> /* MPW 3.0 */
- X+ #include <Strings.h>
- X+ #define CtoPstr c2pstr
- X+ #define PtoCstr p2cstr
- X #endif
- X
- X
- X***************
- X*** 141,151 ****
- X SysEnvRec system;
- X char *keyMap;
- X short color[8];
- X Handle shortMBarHandle,
- X fullMBarHandle;
- X } term_info;
- X
- X! #define TEXTCOLOR 1
- X
- X #define appleMenu 101
- X #define fileMenu 102
- X--- 150,161 ----
- X SysEnvRec system;
- X char *keyMap;
- X short color[8];
- X+ CursHandle cursor[8];
- X Handle shortMBarHandle,
- X fullMBarHandle;
- X } term_info;
- X
- X! #define TEXTCOLOR
- X
- X #define appleMenu 101
- X #define fileMenu 102
- X***************
- X*** 172,177 ****
- X--- 182,192 ----
- X #define LEFT_OFFSET 10
- X
- X /* for macflags variable */
- X+ #define fScreenKluges 0x3000
- X+ #define fFullScrKluge 0x2000
- X+ #define fCornScrKluge 0x1000
- X+ #define fDisplayKluge 0x800
- X+ #define fMoveWRTMouse 0x400
- X #define fZoomOnContextSwitch 0x200
- X #define fUseCustomFont 0x100
- X #define fToggleNumPad 0x80
- X***************
- X*** 189,199 ****
- X--- 204,220 ----
- X #define BONES_TYPE 'BONE'
- X #define LEVEL_TYPE 'LEVL'
- X #define HACK_DATA 'HDTA'
- X+ #define AUXIL_TYPE 'AUXL'
- X+ #define TEXT_TYPE 'TEXT'
- X #define MONST_DATA 101
- X #define OBJECT_DATA 104
- X #define DEFAULT_DATA 100
- X
- X #include "extern.h"
- X+
- X+ # ifndef MACALERT_H
- X+ # include "MacAlert.h"
- X+ # endif
- X
- X #endif /* MACCONF_H /* */
- X #endif /* MACOS / */
- X*** include/Old/mfndpos.h Mon Feb 19 22:10:31 1990
- X--- include/mfndpos.h Tue Nov 28 21:10:41 1989
- X***************
- X*** 1,4 ****
- X! /* SCCS Id: @(#)mfndpos.h 3.0 88/10/15
- X /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
- X /* NetHack may be freely redistributed. See license for details. */
- X /* mfndpos.h - version 1.0.2 */
- X--- 1,4 ----
- X! /* SCCS Id: @(#)mfndpos.h 3.0 89/11/22
- X /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
- X /* NetHack may be freely redistributed. See license for details. */
- X /* mfndpos.h - version 1.0.2 */
- X***************
- X*** 6,26 ****
- X #ifndef MFNDPOS_H
- X #define MFNDPOS_H
- X
- X! /* changed by GAN 02/06/87 to add nine extra bits for traps -
- X! * this because new traps make nine for traps insufficient
- X! */
- X!
- X! #define ALLOW_TRAPS 0777777L
- X! #define ALLOW_U 01000000L /* can attack you */
- X! #define ALLOW_M 02000000L /* can attack other monsters */
- X! #define ALLOW_TM 04000000L
- X! #define ALLOW_ALL (ALLOW_U | ALLOW_M | ALLOW_TM | ALLOW_TRAPS)
- X! #define ALLOW_SSM 010000000L /* ignores scare monster */
- X! #define ALLOW_ROCK 020000000L /* pushes rocks */
- X! #define NOTONL 040000000L /* stays off direct line to player */
- X! #define NOGARLIC 0100000000L /* hates garlic */
- X! #define ALLOW_WALL 0200000000L /* walks through walls */
- X! #define ALLOW_DIG 0400000000L /* digs */
- X! #define ALLOW_SANCT 01000000000L /* enters a temple */
- X
- X #endif /* MFNDPOS_H /**/
- X--- 6,25 ----
- X #ifndef MFNDPOS_H
- X #define MFNDPOS_H
- X
- X! #define ALLOW_TRAPS 0x0002FFFFL /* can enter 18 kinds of traps */
- X! #define ALLOW_U 0x00040000L /* can attack you */
- X! #define ALLOW_M 0x00080000L /* can attack other monsters */
- X! #define ALLOW_TM 0x00100000L /* can attack tame monsters */
- X! #define ALLOW_ALL (ALLOW_U | ALLOW_M | ALLOW_TM | ALLOW_TRAPS)
- X! #define NOTONL 0x00200000L /* avoids direct line to player */
- X! #define OPENDOOR 0x00400000L /* opens closed doors */
- X! #define UNLOCKDOOR 0x00800000L /* unlocks locked doors */
- X! #define BUSTDOOR 0x01000000L /* breaks any doors */
- X! #define ALLOW_ROCK 0x02000000L /* pushes rocks */
- X! #define ALLOW_WALL 0x04000000L /* walks thru walls */
- X! #define ALLOW_DIG 0x08000000L /* digs */
- X! #define ALLOW_SANCT 0x20000000L /* enters temples */
- X! #define ALLOW_SSM 0x40000000L /* ignores scare monster */
- X! #define NOGARLIC 0x80000000L /* hates garlic */
- X
- X #endif /* MFNDPOS_H /**/
- X*** include/Old/mkroom.h Mon Feb 19 22:10:42 1990
- X--- include/mkroom.h Thu Jan 18 20:28:09 1990
- X***************
- X*** 13,19 ****
- X };
- X
- X struct shclass {
- X! char *name; /* name of the shop type */
- X char symb; /* this identifies the shop type */
- X int prob; /* the shop type probability in % */
- X schar dist; /* artifact placement type */
- X--- 13,19 ----
- X };
- X
- X struct shclass {
- X! const char *name; /* name of the shop type */
- X char symb; /* this identifies the shop type */
- X int prob; /* the shop type probability in % */
- X schar dist; /* artifact placement type */
- X*** include/Old/monattk.h Mon Feb 19 22:10:54 1990
- X--- include/monattk.h Mon Nov 20 20:44:37 1989
- X***************
- X*** 1,4 ****
- X! /* SCCS Id: @(#)monattk.h 3.0 89/06/15
- X /* NetHack may be freely redistributed. See license for details. */
- X /* Copyright 1988, M. Stephenson */
- X
- X--- 1,4 ----
- X! /* SCCS Id: @(#)monattk.h 3.0 89/11/20
- X /* NetHack may be freely redistributed. See license for details. */
- X /* Copyright 1988, M. Stephenson */
- X
- X***************
- X*** 72,77 ****
- X
- X #define AD_SAMU 252 /* hits, may steal Amulet (Wizard) */
- X #define AD_CURS 253 /* random curse (ex. gremlin) */
- X- #define AD_CUSS 255 /* says nasty things about you */
- X
- X #endif /* MONATTK_H /**/
- X--- 72,76 ----
- X*** include/Old/monst.h Mon Feb 19 22:11:43 1990
- X--- include/monst.h Fri Feb 2 18:24:36 1990
- X***************
- X*** 18,26 ****
- X #define MTSZ 4
- X coord mtrack[MTSZ]; /* monster track */
- X int mhp, mhpmax;
- X! char mappearance; /* nonzero for undetected 'M's and the Wizard */
- X! int mspec_used; /* monster's special ability attack timeout */
- X schar mtame; /* level of tameness, implies peaceful */
- X
- X Bitfield(mimic,1); /* undetected mimic */
- X Bitfield(mdispl,1); /* mdx,mdy valid */
- X--- 18,33 ----
- X #define MTSZ 4
- X coord mtrack[MTSZ]; /* monster track */
- X int mhp, mhpmax;
- X! unsigned mappearance; /* for undetected mimics and the wiz */
- X! uchar m_ap_type; /* what mappearance is describing: */
- X! #define M_AP_NOTHING 0 /* mappearance is unused */
- X! #define M_AP_FURNITURE 1 /* stairs, a door, an altar, etc. */
- X! #define M_AP_OBJECT 2 /* an object */
- X! #define M_AP_MONSTER 3 /* a monster */
- X! #define M_AP_GOLD 4 /* a quantity (mappearance holds it) of gold */
- X!
- X schar mtame; /* level of tameness, implies peaceful */
- X+ int mspec_used; /* monster's special ability attack timeout */
- X
- X Bitfield(mimic,1); /* undetected mimic */
- X Bitfield(mdispl,1); /* mdx,mdy valid */
- X***************
- X*** 33,59 ****
- X Bitfield(mflee,1); /* fleeing */
- X Bitfield(mfleetim,7); /* timeout for mflee */
- X
- X Bitfield(msleep,1); /* sleeping */
- X- Bitfield(mfroz,1); /* frozen */
- X Bitfield(mstun,1); /* stunned (off balance) */
- X Bitfield(mconf,1); /* confused */
- X Bitfield(mcan,1); /* has been cancelled */
- X Bitfield(mpeaceful,1); /* does not attack unprovoked */
- X- Bitfield(mcansee,1); /* cansee 1, temp.blinded 0, blind 0 */
- X-
- X- Bitfield(mblinded,7); /* cansee 0, temp.blinded n, blind 0 */
- X Bitfield(mtrapped,1); /* trapped in a pit or bear trap */
- X!
- X Bitfield(isshk,1); /* is shopkeeper */
- X Bitfield(isgd,1); /* is guard */
- X #if defined(ALTARS) && defined(THEOLOGY)
- X Bitfield(ispriest,1); /* is a priest */
- X #endif
- X Bitfield(iswiz,1); /* is the Wizard of Yendor */
- X- Bitfield(mleashed,1); /* monster is on a leash */
- X #ifdef WORM
- X Bitfield(wormno,5); /* at most 31 worms on any level */
- X #endif
- X long mtrapseen; /* bitmap of traps we've been trapped in */
- X long mlstmv; /* prevent two moves at once */
- X struct obj *minvent;
- X--- 40,69 ----
- X Bitfield(mflee,1); /* fleeing */
- X Bitfield(mfleetim,7); /* timeout for mflee */
- X
- X+ Bitfield(mcansee,1); /* cansee 1, temp.blinded 0, blind 0 */
- X+ Bitfield(mblinded,7); /* cansee 0, temp.blinded n, blind 0 */
- X+
- X+ Bitfield(mcanmove,1); /* paralysis, similar to mblinded */
- X+ Bitfield(mfrozen,7);
- X+
- X Bitfield(msleep,1); /* sleeping */
- X Bitfield(mstun,1); /* stunned (off balance) */
- X Bitfield(mconf,1); /* confused */
- X Bitfield(mcan,1); /* has been cancelled */
- X Bitfield(mpeaceful,1); /* does not attack unprovoked */
- X Bitfield(mtrapped,1); /* trapped in a pit or bear trap */
- X! Bitfield(mleashed,1); /* monster is on a leash */
- X Bitfield(isshk,1); /* is shopkeeper */
- X+
- X Bitfield(isgd,1); /* is guard */
- X #if defined(ALTARS) && defined(THEOLOGY)
- X Bitfield(ispriest,1); /* is a priest */
- X #endif
- X Bitfield(iswiz,1); /* is the Wizard of Yendor */
- X #ifdef WORM
- X Bitfield(wormno,5); /* at most 31 worms on any level */
- X #endif
- X+
- X long mtrapseen; /* bitmap of traps we've been trapped in */
- X long mlstmv; /* prevent two moves at once */
- X struct obj *minvent;
- X*** include/Old/msdos.h Mon Feb 19 22:12:06 1990
- X--- include/msdos.h Fri Dec 29 21:38:04 1989
- X***************
- X*** 10,15 ****
- X--- 10,18 ----
- X #endif
- X extern const char *alllevels, *allbones;
- X extern char levels[], bones[], permbones[], SAVEF[], hackdir[];
- X+ #ifdef MSDOS
- X+ extern char SAVEP[];
- X+ #endif
- X extern int ramdisk;
- X #if defined(DGK) && !defined(OLD_TOS)
- X extern int count_only;
- X*** include/Old/obj.h Mon Feb 19 22:12:17 1990
- X--- include/obj.h Thu Feb 8 17:17:26 1990
- X***************
- X*** 94,100 ****
- X #define is_sword(otmp) (otmp->otyp >= SHORT_SWORD && otmp->otyp <= KATANA)
- X #define bimanual(otmp) (otmp->olet == WEAPON_SYM && objects[otmp->otyp].oc_bimanual)
- X
- X- #define is_flammable(otmp) (objects[otmp->otyp].oc_material == WOOD || objects[otmp->otyp].oc_material == 0)
- X #define is_rustprone(otmp) (objects[otmp->otyp].oc_material == METAL)
- X #define is_corrodeable(otmp) (objects[otmp->otyp].oc_material == COPPER)
- X # endif /* STUPID_CPP */
- X--- 94,99 ----
- X*** include/Old/objclass.h Mon Feb 19 22:12:33 1990
- X--- include/objclass.h Thu Jan 18 20:28:13 1990
- X***************
- X*** 8,16 ****
- X /* definition of a class of objects */
- X
- X struct objclass {
- X! char *oc_name; /* actual name */
- X! char *oc_descr; /* description when name unknown */
- X! char *oc_uname; /* called by user */
- X Bitfield(oc_name_known,1);
- X Bitfield(oc_merge,1); /* merge otherwise equal objects */
- X Bitfield(oc_uses_known,1); /* obj->known affects full decription */
- X--- 8,16 ----
- X /* definition of a class of objects */
- X
- X struct objclass {
- X! const char *oc_name; /* actual name */
- X! const char *oc_descr; /* description when name unknown */
- X! char *oc_uname; /* called by user */
- X Bitfield(oc_name_known,1);
- X Bitfield(oc_merge,1); /* merge otherwise equal objects */
- X Bitfield(oc_uses_known,1); /* obj->known affects full decription */
- X***************
- X*** 79,85 ****
- X /* definitions of all object-symbols */
- X
- X #define RANDOM_SYM '\0' /* used for generating random objects */
- X! #define ILLOBJ_SYM '\\'
- X #define AMULET_SYM '"'
- X #define FOOD_SYM '%'
- X #define WEAPON_SYM ')'
- X--- 79,85 ----
- X /* definitions of all object-symbols */
- X
- X #define RANDOM_SYM '\0' /* used for generating random objects */
- X! #define ILLOBJ_SYM ']' /* should be same as S_MIMIC_DEF */
- X #define AMULET_SYM '"'
- X #define FOOD_SYM '%'
- X #define WEAPON_SYM ')'
- X*** include/Old/patchlevel.h Mon Feb 19 22:12:47 1990
- X--- include/patchlevel.h Mon Feb 19 21:53:08 1990
- X***************
- X*** 66,69 ****
- X * teach '/' about configurable symbols
- X */
- X
- X! #define PATCHLEVEL 6
- X--- 66,87 ----
- X * teach '/' about configurable symbols
- X */
- X
- X! /*
- X! * Patch 7, February 19, 1990
- X! * refine overlay support to handle portions of .c files through OVLx
- X! * (courtesy above plus Kevin Smolkowski)
- X! * update and extend Amiga port and documentation (courtesy Richard Addison,
- X! * Jochen Erwied, Mark Gooderum, Ken Lorber, Greg Olson, Mike Passaretti,
- X! * and Gregg Wonderly)
- X! * refine and extend Macintosh port and documentation (courtesy Johnny Lee,
- X! * Kevin Sitze, Michael Sokolov, Andy Swanson, Jon Watte, and Tom West)
- X! * refine VMS documentation
- X! * continuing ANSIfication, this time of const usage
- X! * teach '/' about differences within monster classes
- X! * smarter eating code (yet again), death messages, and treatment of
- X! * non-animal monsters, monster unconsciousness, and naming
- X! * extended version command to give compilation options
- X! * and the usual bug fixes and hole plugs
- X! */
- X!
- X! #define PATCHLEVEL 7
- X*** include/Old/pcconf.h Mon Feb 19 22:12:59 1990
- X--- include/pcconf.h Thu Feb 15 19:05:44 1990
- X***************
- X*** 6,16 ****
- X #ifndef PCCONF_H
- X #define PCCONF_H
- X
- X! /* #define OS2 /* define for OS/2 (Timo Hakulinen) */
- X! /* #define OS2_CODEVIEW /* define for OS/2 CodeView debugger,
- X! otherwise path searches may fail (TH) */
- X
- X! #ifndef TOS
- X /*
- X * The following options are configurable:
- X */
- X--- 6,18 ----
- X #ifndef PCCONF_H
- X #define PCCONF_H
- X
- X! #if !defined(TOS) && !defined(AMIGA)
- X
- X! /* #define MSC /* define for pre-ANSI Microsoft C compilers (ver. < 5.0). */
- X!
- X! /* #define OS2 /* define for OS/2 (Timo Hakulinen) */
- X! /* #define OS2_CODEVIEW /* define for OS/2 CodeView debugger versions earlier
- X! than 2.3, otherwise path searches may fail */
- X /*
- X * The following options are configurable:
- X */
- X***************
- X*** 61,67 ****
- X--- 63,71 ----
- X #define index strchr
- X #define rindex strrchr
- X
- X+ #ifndef AMIGA
- X #include <time.h>
- X+ #endif
- X
- X #ifdef RANDOM
- X /* Use the high quality random number routines. */
- X***************
- X*** 95,101 ****
- X #define Getchar tgetch
- X #endif
- X
- X! #ifndef TOS
- X # define TEXTCOLOR /* */
- X #endif
- X
- X--- 99,105 ----
- X #define Getchar tgetch
- X #endif
- X
- X! #if !defined(TOS) && !defined(AMIGA)
- X # define TEXTCOLOR /* */
- X #endif
- X
- X*** include/Old/permonst.h Mon Feb 19 22:13:17 1990
- X--- include/permonst.h Tue Jan 16 18:11:23 1990
- X***************
- X*** 16,23 ****
- X * are set, they may have a special meaning. For example, if set
- X * for a blinding attack, they determine the amount of time blinded.
- X */
- X- struct attack {
- X
- X uchar aatyp;
- X uchar adtyp, damn, damd;
- X };
- X--- 16,23 ----
- X * are set, they may have a special meaning. For example, if set
- X * for a blinding attack, they determine the amount of time blinded.
- X */
- X
- X+ struct attack {
- X uchar aatyp;
- X uchar adtyp, damn, damd;
- X };
- X***************
- X*** 35,41 ****
- X #if defined(SMALLDATA) && !defined(MAKEDEFS_C)
- X char mname[24], mlet; /* full name and sym */
- X #else
- X! char *mname, mlet; /* full name and sym */
- X #endif
- X schar mlevel, /* base monster level */
- X mmove, /* move speed */
- X--- 35,42 ----
- X #if defined(SMALLDATA) && !defined(MAKEDEFS_C)
- X char mname[24], mlet; /* full name and sym */
- X #else
- X! const char *mname; /* full name */
- X! char mlet; /* symbol */
- X #endif
- X schar mlevel, /* base monster level */
- X mmove, /* move speed */
- X*** include/Old/rm.h Mon Feb 19 22:13:44 1990
- X--- include/rm.h Sat Feb 3 22:42:58 1990
- X***************
- X*** 68,74 ****
- X #define IS_STWALL(typ) ((typ) <= TRWALL) /* STONE <= (typ) <= TRWALL */
- X #define IS_ROCK(typ) ((typ) < POOL) /* absolutely nonaccessible */
- X #define IS_DOOR(typ) ((typ) == DOOR)
- X- #define IS_FLOOR(typ) ((typ) == ROOM)
- X #define ACCESSIBLE(typ) ((typ) >= DOOR) /* good position */
- X #define IS_ROOM(typ) ((typ) >= ROOM) /* ROOM, STAIRS, furniture.. */
- X #define ZAP_POS(typ) ((typ) >= POOL)
- X--- 68,73 ----
- X***************
- X*** 128,134 ****
- X typedef uchar symbol_array[MAXPCHARS];
- X
- X extern symbol_array showsyms;
- X! extern char *explainsyms[MAXPCHARS]; /* tells what the characters are */
- X #ifdef REINCARNATION
- X extern symbol_array savesyms;
- X #endif
- X--- 127,133 ----
- X typedef uchar symbol_array[MAXPCHARS];
- X
- X extern symbol_array showsyms;
- X! extern const char *explainsyms[MAXPCHARS]; /* tells what the characters are */
- X #ifdef REINCARNATION
- X extern symbol_array savesyms;
- X #endif
- X*** include/Old/tosconf.h Mon Feb 19 22:15:04 1990
- X--- include/tosconf.h Thu Feb 15 19:09:29 1990
- X***************
- X*** 8,36 ****
- X
- X #define MSDOS /* must be defined to allow some inclusions */
- X
- X! /* NOTE: if your TOS compiler is dumb, #define OLD_TOS and compile with
- X! oldtos.c to get a minimal configuration (you may need to do some
- X! tweaking); otherwise (e.g. GCC) don't do it. OLD_TOS corresponds
- X! most closely to LATTICE C, I think */
- X
- X! /* #define OLD_TOS /* primitive C library */
- X! /* #define NO_SIGNAL /* compiler doesn't support signals */
- X
- X! #ifdef __GNUC__
- X #define FCMASK 0666
- X #define O_BINARY 0
- X- #else
- X- #define FCMASK 0x8000
- X #endif
- X
- X #ifdef UNIXDEBUG
- X- #define O_BINARY 0
- X #define remove(x) unlink(x)
- X- #endif
- X-
- X- #ifdef OLD_TOS
- X- #define Rand() rand()
- X- #define Srand() srand()
- X #endif
- X
- X /* configurable options */
- X--- 8,30 ----
- X
- X #define MSDOS /* must be defined to allow some inclusions */
- X
- X! /*
- X! Adjust these options to suit your compiler. The default here is for
- X! GNU C with the latest version of the library.
- X! */
- X
- X! /*#define NO_SIGNAL /* library doesn't support signals */
- X! /*#define NO_FSTAT /* library doesn't have fstat() call */
- X
- X! #ifdef O_BINARY
- X! #define FCMASK O_BINARY
- X! #else
- X #define FCMASK 0666
- X #define O_BINARY 0
- X #endif
- X
- X #ifdef UNIXDEBUG
- X #define remove(x) unlink(x)
- X #endif
- X
- X /* configurable options */
- X*** include/Old/tradstdc.h Mon Feb 19 22:15:20 1990
- X--- include/tradstdc.h Tue Feb 6 18:45:05 1990
- X***************
- X*** 10,15 ****
- X--- 10,19 ----
- X #define void int
- X #endif
- X
- X+ #ifdef APOLLO /* the Apollo C compiler claims to be __STDC__, but isn't */
- X+ #undef __STDC__
- X+ #endif
- X+
- X /*
- X * ANSI X3J11 detection.
- X * Makes substitutes for compatibility with the old C standard.
- X***************
- X*** 18,25 ****
- X /* Decide how to handle variable parameter lists:
- X * USE_STDARG means use the ANSI <stdarg.h> facilities (only ANSI compilers
- X * should do this, and only if the library supports it).
- X! * USE_VARARGS means use the <varargs.h> facilities. Again, this should only
- X! * be done if the library supports it. ANSI is *not* required for this.
- X * Otherwise, the kludgy old methods are used.
- X * The defaults are USE_STDARG for ANSI compilers, and USE_OLDARGS for
- X * others.
- X--- 22,29 ----
- X /* Decide how to handle variable parameter lists:
- X * USE_STDARG means use the ANSI <stdarg.h> facilities (only ANSI compilers
- X * should do this, and only if the library supports it).
- X! * USE_VARARGS means use the <varargs.h> facilities. Again, this should only
- X! * be done if the library supports it. ANSI is *not* required for this.
- X * Otherwise, the kludgy old methods are used.
- X * The defaults are USE_STDARG for ANSI compilers, and USE_OLDARGS for
- X * others.
- X***************
- X*** 28,35 ****
- X /* #define USE_VARARGS /* use <varargs.h> instead of <stdarg.h> */
- X /* #define USE_OLDARGS /* don't use any variable argument facilites */
- X
- X! #ifdef __STDC__
- X! # if !(defined(AMIGA) || defined(USE_VARARGS) || defined(USE_OLDARGS))
- X # define USE_STDARG
- X # endif
- X #endif
- X--- 32,39 ----
- X /* #define USE_VARARGS /* use <varargs.h> instead of <stdarg.h> */
- X /* #define USE_OLDARGS /* don't use any variable argument facilites */
- X
- X! #if defined(__STDC__) || defined(VMS)
- X! # if !(defined(AMIGA) && defined(AZTEC_C) || defined(USE_VARARGS) || defined(USE_OLDARGS))
- X # define USE_STDARG
- X # endif
- X #endif
- X***************
- X*** 71,88 ****
- X #endif
- X #endif /* NEED_VARARGS */
- X
- X! #if (defined(__STDC__) || defined(MSDOS) || defined(THINKC4)) && !defined(AMIGA)
- X
- X /* Used for robust ANSI parameter forward declarations:
- X * int VDECL(sprintf, (char *, const char *, ...));
- X *
- X * FDECL() is used for functions with a fixed number of arguments;
- X * VDECL() is used for functions with a variable number of arguments.
- X * Separate macros are needed because ANSI will mix old-style declarations
- X! * with prototypes, except in the case of varargs.
- X */
- X
- X # define FDECL(f,p) f p
- X # if defined(MSDOS) || defined(USE_STDARG)
- X # define VDECL(f,p) f p
- X # else
- X--- 75,98 ----
- X #endif
- X #endif /* NEED_VARARGS */
- X
- X!
- X! #if defined(__STDC__) || defined(MSDOS) || defined(THINKC4)
- X
- X /* Used for robust ANSI parameter forward declarations:
- X * int VDECL(sprintf, (char *, const char *, ...));
- X *
- X+ * NDECL() is used for functions with zero arguments;
- X * FDECL() is used for functions with a fixed number of arguments;
- X * VDECL() is used for functions with a variable number of arguments.
- X * Separate macros are needed because ANSI will mix old-style declarations
- X! * with prototypes, except in the case of varargs, and the OVERLAY-specific
- X! * trampoli.* mechanism conflicts with the ANSI <<f(void)>> syntax.
- X */
- X
- X+ # define NDECL(f) f(void) /* Must be overridden if OVERLAY set later */
- X+
- X # define FDECL(f,p) f p
- X+
- X # if defined(MSDOS) || defined(USE_STDARG)
- X # define VDECL(f,p) f p
- X # else
- X***************
- X*** 102,112 ****
- X
- X #else /* __STDC__ */ /* a "traditional" C compiler */
- X
- X # define FDECL(f,p) f()
- X # define VDECL(f,p) f()
- X
- X # ifndef genericptr_t
- X! # ifdef AMIGA
- X typedef void * genericptr_t;
- X # else
- X typedef char * genericptr_t;
- X--- 112,123 ----
- X
- X #else /* __STDC__ */ /* a "traditional" C compiler */
- X
- X+ # define NDECL(f) f()
- X # define FDECL(f,p) f()
- X # define VDECL(f,p) f()
- X
- X # ifndef genericptr_t
- X! # if defined(AMIGA) || defined(HPUX)
- X typedef void * genericptr_t;
- X # else
- X typedef char * genericptr_t;
- X*** include/Old/trampoli.h Mon Feb 19 22:15:37 1990
- X--- include/trampoli.h Mon Feb 5 18:45:30 1990
- X***************
- X*** 20,25 ****
- X--- 20,28 ----
- X #ifdef POLYSELF
- X #define domonability() domonability_()
- X #endif /* POLYSELF */
- X+ #ifdef EXPLORE_MODE
- X+ #define enter_explore_mode() enter_explore_mode_()
- X+ #endif /* EXPLORE_MODE */
- X #define timed_occupation() timed_occupation_()
- X #if defined(WIZARD) || defined(EXPLORE_MODE)
- X #define wiz_attributes() wiz_attributes_()
- X***************
- X*** 87,92 ****
- X--- 90,96 ----
- X
- X
- X /* ### end.c ### */
- X+ #define done1() done1_()
- X #define done2() done2_()
- X
- X
- X***************
- X*** 130,135 ****
- X--- 134,143 ----
- X #define picklock() picklock_()
- X
- X
- X+ /* ### mondata.c ### */
- X+ #define canseemon(x) canseemon_(x)
- X+
- X+
- X /* ### o_init.c ### */
- X #define dodiscovered() dodiscovered_()
- X
- X***************
- X*** 156,162 ****
- X
- X
- X /* ### pickup.c ### */
- X! #define ck_bag() ck_bag_()
- X #define ck_container(x) ck_container_(x)
- X #define doloot() doloot_()
- X #define in_container(x) in_container_(x)
- X--- 164,170 ----
- X
- X
- X /* ### pickup.c ### */
- X! #define ck_bag(x) ck_bag_(x)
- X #define ck_container(x) ck_container_(x)
- X #define doloot() doloot_()
- X #define in_container(x) in_container_(x)
- X***************
- X*** 227,232 ****
- X--- 235,241 ----
- X
- X /* ### version.c ### */
- X #define doversion() doversion_()
- X+ #define doextversion() doextversion_()
- X
- X /* ### wield.c ### */
- X #define dowield() dowield_()
- X*** include/Old/unixconf.h Mon Feb 19 22:16:11 1990
- X--- include/unixconf.h Sat Feb 3 16:30:26 1990
- X***************
- X*** 16,33 ****
- X * index strchr
- X * rindex strrchr
- X *
- X- * Also, the code for suspend is only given for BSD
- X */
- X
- X /* #define BSD /* define for 4.n BSD */
- X! /* also for relatives like SunOS */
- X #define ULTRIX /* define for Ultrix v3.0 or higher (but not lower) */
- X /* Use BSD for < v3.0 */
- X /* "ULTRIX" not to be confused with "ultrix" */
- X /* #define SYSV /* define for System V */
- X /* #define NETWORK /* if running on a networked system */
- X /* e.g. Suns sharing a playground through NFS */
- X-
- X /* #define GENIX /* Yet Another Unix Clone */
- X /* #define HISX /* Bull Unix for XPS Machines */
- X /* #define UNIXPC /* use in addition to SYSV for AT&T 7300/3B1 */
- X--- 16,37 ----
- X * index strchr
- X * rindex strrchr
- X *
- X */
- X
- X+ /* define one of the following */
- X /* #define BSD /* define for 4.n BSD */
- X! /* also for relatives like SunOS and DG/UX */
- X #define ULTRIX /* define for Ultrix v3.0 or higher (but not lower) */
- X /* Use BSD for < v3.0 */
- X /* "ULTRIX" not to be confused with "ultrix" */
- X /* #define SYSV /* define for System V */
- X+ /* #define HPUX /* Hewlett-Packard's Unix, version 6.5 or higher */
- X+ /* use SYSV for < v6.5 */
- X+
- X+
- X+ /* define any of the following that are appropriate */
- X /* #define NETWORK /* if running on a networked system */
- X /* e.g. Suns sharing a playground through NFS */
- X /* #define GENIX /* Yet Another Unix Clone */
- X /* #define HISX /* Bull Unix for XPS Machines */
- X /* #define UNIXPC /* use in addition to SYSV for AT&T 7300/3B1 */
- X***************
- X*** 36,41 ****
- X--- 40,46 ----
- X
- X /* #define PYRAMID_BUG /* avoid a bug on the Pyramid */
- X /* #define APOLLO /* same for the Apollo */
- X+ /* #define BSD_43_BUG /* for real 4.3BSD cc's without schain botch fix */
- X /* #define MICROPORT_BUG /* problems with large arrays in structs */
- X /* #define MICROPORT_286_BUG /* Changes needed in termcap.c to get it to
- X run with Microport Sys V/AT version 2.4.
- X***************
- X*** 66,99 ****
- X * #define DEF_PAGER ".../mydir/mypager"
- X */
- X
- X /*
- X * If you define MAIL, then the player will be notified of new mail
- X! * when it arrives. If you also define DEF_MAILREADER then this will
- X * be the default mail reader, and can be overridden by the environment
- X * variable MAILREADER; otherwise an internal pager will be used.
- X * A stat system call is done on the mailbox every MAILCKFREQ moves.
- X */
- X
- X! #define MAIL /* Deliver mail during the game */
- X! #ifdef MAIL
- X
- X # if defined(BSD) || defined(ULTRIX)
- X #define DEF_MAILREADER "/usr/ucb/Mail"
- X! # else
- X! # if defined(SYSV) || defined(DGUX)
- X! # ifdef M_XENIX
- X #define DEF_MAILREADER "/usr/bin/mail"
- X- # else
- X- #define DEF_MAILREADER "/usr/bin/mailx"
- X- # endif
- X # else
- X! #define DEF_MAILREADER "/bin/mail"
- X # endif
- X # endif
- X
- X #define MAILCKFREQ 50
- X #endif /* MAIL */
- X
- X #ifdef COMPRESS
- X /* Some implementations of compress need a 'quiet' option.
- X * If you've got one of these versions, put -q here.
- X--- 71,133 ----
- X * #define DEF_PAGER ".../mydir/mypager"
- X */
- X
- X+
- X+
- X /*
- X * If you define MAIL, then the player will be notified of new mail
- X! * when it arrives. If you also define DEF_MAILREADER then this will
- X * be the default mail reader, and can be overridden by the environment
- X * variable MAILREADER; otherwise an internal pager will be used.
- X * A stat system call is done on the mailbox every MAILCKFREQ moves.
- X */
- X
- X! #define MAIL /* Deliver mail during the game */
- X!
- X! /* The Andrew Message System does mail a little differently from normal
- X! * UNIX. Mail is deposited in the user's own directory in ~/Mailbox
- X! * (another directory). MAILBOX is the element that will be added on to
- X! * the user's home directory path to generate the Mailbox path - just in
- X! * case other Andrew sites do it differently from CMU.
- X! *
- X! * dan lovinger
- X! * dl2n+@andrew.cmu.edu (dec 19 1989)
- X! */
- X!
- X! /* #define AMS /* use Andrew message system for mail */
- X!
- X! /* NO_MAILREADER is for kerberos authentcating filesystems where it is
- X! * essentially impossible to securely exec child proccesses, like mail
- X! * readers, when the game is running under a special token.
- X! *
- X! * dan
- X! */
- X!
- X! /* #define NO_MAILREADER /* have mail daemon just tell player of mail */
- X
- X+ #ifdef MAIL
- X # if defined(BSD) || defined(ULTRIX)
- X+ # ifdef AMS
- X+ #define AMS_MAILBOX "/Mailbox"
- X+ # else
- X #define DEF_MAILREADER "/usr/ucb/Mail"
- X! # endif
- X! #else
- X! # if defined(SYSV) || defined(DGUX) || defined(HPUX)
- X! # ifdef M_XENIX
- X #define DEF_MAILREADER "/usr/bin/mail"
- X # else
- X! #define DEF_MAILREADER "/usr/bin/mailx"
- X # endif
- X+ # else
- X+ #define DEF_MAILREADER "/bin/mail"
- X # endif
- X+ #endif
- X
- X #define MAILCKFREQ 50
- X #endif /* MAIL */
- X
- X+
- X+
- X #ifdef COMPRESS
- X /* Some implementations of compress need a 'quiet' option.
- X * If you've got one of these versions, put -q here.
- X***************
- X*** 110,116 ****
- X * The remainder of the file should not need to be changed.
- X */
- X
- X! #if (defined(BSD) || defined(ULTRIX)) && !defined(MSDOS)
- X #include <sys/time.h>
- X #else
- X #include <time.h>
- X--- 144,161 ----
- X * The remainder of the file should not need to be changed.
- X */
- X
- X! /*
- X! * BSD/ULTRIX systems are normally the only ones that can suspend processes.
- X! * Suspending NetHack processes cleanly should be easy to add to other systems
- X! * that have SIGTSTP. Currently the only such system known to work is HPUX;
- X! * other systems will probably require tweaks to unixtty.c and ioctl.c.
- X! */
- X! #if defined(BSD) || defined(ULTRIX) || defined (HPUX)
- X! #define SUSPEND /* let ^Z suspend the game */
- X! #endif
- X!
- X!
- X! #if defined(BSD) || defined(ULTRIX)
- X #include <sys/time.h>
- X #else
- X #include <time.h>
- X***************
- X*** 130,138 ****
- X #include "system.h"
- X
- X #if defined(BSD) || defined(ULTRIX)
- X! #define SUSPEND /* let ^Z suspend the game */
- X #define memcpy(d, s, n) bcopy(s, d, n)
- X #define memcmp(s1, s2, n) bcmp(s2, s1, n)
- X #else /* therefore SYSV */
- X #define index strchr
- X #define rindex strrchr
- X--- 175,184 ----
- X #include "system.h"
- X
- X #if defined(BSD) || defined(ULTRIX)
- X! # ifndef DGUX
- X #define memcpy(d, s, n) bcopy(s, d, n)
- X #define memcmp(s1, s2, n) bcmp(s2, s1, n)
- X+ # endif
- X #else /* therefore SYSV */
- X #define index strchr
- X #define rindex strrchr
- X*** include/Old/vault.h Mon Feb 19 22:16:28 1990
- X--- include/vault.h Sun Feb 4 09:47:28 1990
- X***************
- X*** 13,22 ****
- X struct egd {
- X int fcbeg, fcend; /* fcend: first unused pos */
- X xchar gdx, gdy; /* goal of guard's walk */
- X unsigned gddone:1;
- X struct fakecorridor fakecorr[FCSIZ];
- X };
- X
- X! #define EGD ((struct egd *)(&(guard->mextra[0])))
- X
- X #endif /* VAULT_H /* */
- X--- 13,25 ----
- X struct egd {
- X int fcbeg, fcend; /* fcend: first unused pos */
- X xchar gdx, gdy; /* goal of guard's walk */
- X+ xchar ogx, ogy; /* guard's last position */
- X+ xchar gdlevel; /* level guard was created on */
- X+ xchar warncnt; /* number of warnings to follow */
- X unsigned gddone:1;
- X struct fakecorridor fakecorr[FCSIZ];
- X };
- X
- X! #define EGD(mon) ((struct egd *)(&(mon->mextra[0])))
- X
- X #endif /* VAULT_H /* */
- X*** include/Old/vmsconf.h Mon Feb 19 22:16:40 1990
- X--- include/vmsconf.h Tue Feb 6 18:45:10 1990
- X***************
- X*** 31,36 ****
- X--- 31,42 ----
- X * The remainder of the file should not need to be changed.
- X */
- X
- X+ /* GCC 1.36 (or maybe GAS) for VMS has a bug with extern const declarations.
- X+ Until it is fixed, eliminate const. */
- X+ #ifdef __GNUC__
- X+ # define const
- X+ #endif
- X+
- X #include <time.h>
- X #include <file.h>
- X
- X***************
- X*** 59,69 ****
- X--- 65,79 ----
- X #define Srand(seed) srand(seed)
- X #endif
- X
- X+ #define bcopy(s1,s2,sz) memcpy(s2,s1,sz)
- X #define unlink(x) delete(x)
- X #define exit(x) vms_exit(x)
- X #define getuid() vms_getuid()
- X #define abort() vms_abort()
- X #define creat(f,m) vms_creat(f,m)
- X+
- X+ /* VMS global names are case insensitive... */
- X+ #define An vms_an
- X
- X #endif
- X #endif /* VMS /* */
- X*** include/Old/you.h Mon Feb 19 22:17:00 1990
- X--- include/you.h Mon Feb 19 18:16:33 1990
- X***************
- X*** 67,73 ****
- X struct prop uprops[LAST_PROP+1];
- X
- X unsigned umconf;
- X! char *usick_cause;
- X /* For messages referring to hands, eyes, feet, etc... when polymorphed */
- X #define ARM 0
- X #define EYE 1
- X--- 67,73 ----
- X struct prop uprops[LAST_PROP+1];
- X
- X unsigned umconf;
- X! const char *usick_cause;
- X /* For messages referring to hands, eyes, feet, etc... when polymorphed */
- X #define ARM 0
- X #define EYE 1
- X***************
- X*** 81,87 ****
- X #define LEG 9
- X #define LIGHT_HEADED 10
- X #define NECK 11
- X! #define TOE 12
- X #ifdef POLYSELF
- X int mh, mhmax, mtimedone, umonnum; /* for polymorph-self */
- X struct attribs macurr, /* for monster attribs */
- X--- 81,88 ----
- X #define LEG 9
- X #define LIGHT_HEADED 10
- X #define NECK 11
- X! #define SPINE 12
- X! #define TOE 13
- X #ifdef POLYSELF
- X int mh, mhmax, mtimedone, umonnum; /* for polymorph-self */
- X struct attribs macurr, /* for monster attribs */
- X
- END_OF_FILE
- if test 53275 -ne `wc -c <'patch7.16'`; then
- echo shar: \"'patch7.16'\" unpacked with wrong size!
- fi
- # end of 'patch7.16'
- echo shar: End of archive 20 \(of 30\).
- cp /dev/null ark20isdone
- MISSING=""
- for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 ; do
- if test ! -f ark${I}isdone ; then
- MISSING="${MISSING} ${I}"
- fi
- done
- if test "${MISSING}" = "" ; then
- echo You have unpacked all 30 archives.
- rm -f ark[1-9]isdone ark[1-9][0-9]isdone
- else
- echo You still need to unpack the following archives:
- echo " " ${MISSING}
- fi
- ## End of shell archive.
- exit 0
-